package com.ruoyi.project.member.privilegepackage.domain;

import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;

/**
 * 会员特权对象 privilege_package
 *
 * @author shixiangwen
 * @date 2020-03-11
 */
public class PrivilegePackage extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 套餐ID
     */
    @Excel(name = "套餐ID")
    private Long id;

    /**
     * 应用ID
     */
    @Excel(name = "应用ID")
    private String appId;

    /**
     * 名称
     */
    @Excel(name = "名称")
    private String name;

    /**
     * 金额(分)
     */
    @Excel(name = "金额(分)")
    private Long fee;

    /**
     * 时间
     */
    @Excel(name = "时间")
    private String period;

    /**
     * 折扣金额(分)
     */
    @Excel(name = "折扣金额(分)")
    private Long discountFee;

    private BigDecimal yuan;

    private BigDecimal discountYuan;

    /**
     * 自动续费
     */
    @Excel(name = "自动续费")
    private Long autoRenew;

    /**
     * 特权类型
     */
    @Excel(name = "特权类型")
    private Long type;

    /**
     * 特权时间
     */
    @Excel(name = "特权时间")
    private Long month;

    //赠送时间
    private Long giftMonth;

    private String minVersion;

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setAppId(String appId) {
        this.appId = appId;
    }

    public String getAppId() {
        return appId;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setFee(Long fee) {
        this.fee = fee;
    }

    public Long getFee() {
        return fee;
    }

    public void setPeriod(String period) {
        this.period = period;
    }

    public String getPeriod() {
        return period;
    }

    public void setDiscountFee(Long discountFee) {
        this.discountFee = discountFee;
    }

    public Long getDiscountFee() {
        return discountFee;
    }

    public void setAutoRenew(Long autoRenew) {
        this.autoRenew = autoRenew;
    }

    public Long getAutoRenew() {
        return autoRenew;
    }

    public void setType(Long type) {
        this.type = type;
    }

    public Long getType() {
        return type;
    }

    public void setMonth(Long month) {
        this.month = month;
    }

    public Long getMonth() {
        return month;
    }

    public BigDecimal getYuan() {
        return yuan;
    }

    public void setYuan(BigDecimal yuan) {
        this.yuan = yuan;
    }

    public BigDecimal getDiscountYuan() {
        return discountYuan;
    }

    public void setDiscountYuan(BigDecimal discountYuan) {
        this.discountYuan = discountYuan;
    }

    public String getMinVersion() {
        return minVersion;
    }

    public void setMinVersion(String minVersion) {
        this.minVersion = minVersion;
    }

    public Long getGiftMonth() {
        return giftMonth;
    }

    public void setGiftMonth(Long giftMonth) {
        this.giftMonth = giftMonth;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("id", getId()).append("appId", getAppId()).append("name", getName()).append("fee", getFee())
                .append("period", getPeriod()).append("discountFee", getDiscountFee()).append("autoRenew", getAutoRenew()).append("createBy", getCreateBy()).append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy()).append("updateTime", getUpdateTime()).append("type", getType()).append("month", getMonth()).toString();
    }
}
